// 每个接口对应一个函数   接口请求函数

import request from './ajax.js'
import mockAjax from '@/api/mockAjax.js'
import user from '../store/user.js'

// 获取分类数据
export const reqCategoryList = () => {
    return request({
        // http://121.5.235.28:8888/api/v1/get/product/getBaseCategoryList
        // http://api.atguigu.cn
        // 这里已经有了基础路径 /api  直接写后面的路径即可
        url: '/product/getBaseCategoryList',
        method: 'get',  // 请求方式
    })
}

// 请求获取模拟接口的数据banner 和 floor  
export const reqBannerList = ()=>{
    return mockAjax({
        url: '/banner',
        method: 'get',
    })
}

export const reqFloorList = ()=>{
    return mockAjax({
        url: '/floor',
        method: 'get',
    })
}
// 请求获取搜索数据
export const reqSearchInfo = (searchParams) => {
    return request({
        url:'/list',
        method: 'post',
        data: searchParams,  // searchParams就是用户搜索传递的参数 可以是空值 但是不能不传
    })
}

// 请求获取详情
// /item/skuId
// get
export const reqDetailInfo = (skuId) => {
    return request({
        url: `/item/${skuId}`,
        method: 'get',
    })
}

// 添加购物车或修改商品数量
// /cart/addToCart/{skuId}/{skuNum}
//  post
export const reqAddOrUpdateShopCart = ({skuId,skuNum})=>{
    return request({
        url: `/cart/addToCart/${skuId}/${skuNum}`,
        method: 'post',
    })
}

// 请求获取购物车页面数据 reqShopCartList
// /api/cart/cartList
// get
export const reqShopCartList = ()=>{
    return request({
        url: '/cart/cartList',
        method: 'get',
    })
}


// 修改购物车选中状态 reqUpdateCartIschecked
// /api/cart/checkCart/{skuId}/{isChecked}
// get
export const reqUpdateCartIschecked = ({skuId,isChecked})=>{
    return request({
        url: `/cart/checkCart/${skuId}/${isChecked}`,
        method: 'get'
    })
}

// 删除某条购物车信息
// /api/cart/deleteCart/{skuId}
// DELETE
export const reqDeleteShopCart = ({skuId}) => {
    return request({
        url: `/cart/deleteCart/${skuId}`,
        method: 'delete'
    })
}

// 获取验证码
export const reqGetCode = (phone) => {
    return request({
        url: `/user/passport/sendCode/${phone}`,
        method: 'get',
    })
}

// 注册用户
export const reqUserRegister = (userInfo) => {
    return request({
        url: '/user/passport/register',
        method: 'post',
        data: userInfo,
    })
}

// 登录用户
export const reqUserLogin = (userInfo) => {
    return request({
        url: '/user/passport/login',
        method: 'post',
        data: userInfo,
    })
}



// 根据token获取用户信息
export const reqGetUserInfo = ()=>{
    return request({
        url: '/user/passport/auth/getUserInfo',
        method: 'get',
    })
}

// 退出用户登录
export const reqUserLogout = ()=>{
    return request({
        url: '/user/passport/logout',
        method: 'get',
    })
}

// 获取用户收货地址信息
export const reqUserAddressList = ()=>{
    return request({
        url: '/user/userAddress/auth/findUserAddressList',
        method: 'get',
    })
}
// 获取订单交易信息
export const reqTradeInfo = ()=>{
    return request({
        url: '/order/auth/trade',
        method: 'get',
    })
}

// 提交订单
export const reqSubmitOrder = (tradeNo,tradeInfo)=>{
    return request({
        // 这里注意下 同时带query参数和params参数 url的写法
        url: `/order/auth/submitOrder?tradeNo=${tradeNo}`,
        method: 'post',
        data: tradeInfo,
    })
}

// 获取支付信息
export const reqPayInfo = (orderId)=>{
    return request({
        url: `/payment/weixin/createNative/${orderId}`,
        method: 'get'
    })
}

// 获取当前支付状态
export const reqPayStatus = (orderId)=> {
    return request({
        url: `/payment/weixin/queryPayStatus/${orderId}`,
        method: 'get',
    })
}

// 获取我的订单列表
export const reqMyOrderInfo = (page,limit)=>{
    return request({
        url: `/order/auth/${page}/${limit}`,
        method: 'get'
    })
}

// let res = reqGetCode(13698765432)
// console.log(res);
// let res = reqAddOrUpdateShopCart({skuId:6204,skuNum:5})
// console.log(res);

// 搜索请求  带参数的post请求
// export const reqSearchInfo = (searchParams)=>{
//     return mockAjax({
//         url:'/list',
//         method: 'post',
//         data: searchParams,  // searchParams就是用户搜索传递的参数 可以是空值 但是不能不传
//     })
// }


// 测试
// let res = reqSearchInfo({},)
// console.log(res);
// let res = reqDetailInfo('6615')
// console.log(res);